#include <iostream>
#include "BinarySerach.h"
#include "BSSymbolTable.h"
#include "AbstractSymbolTable.h"
#include <vector>
#include <string>
#include "BSTreeSymbolTable.h"
void unitTestOfRank(const vector<int>& vec, int target);


int main()
{
	BSTreeSymbolTable<int, int> treeSymbolTree;
	treeSymbolTree.put(8, 9);
	treeSymbolTree.put(2, 19);
	treeSymbolTree.put(9, 22);
	treeSymbolTree.reveal();
	

	system("pause");
	return 0;
}


void unitTestOfRank(const vector<int>& vec, int target)
{
	BinarySerach<int> algObject;

	std::cout << "postion of the target: " << algObject.oriBinSearch(vec, target) << std::endl;


	std::cout << "rank: " << algObject.rank(vec, target) << std::endl;

	std::cout << "result of refined rank: " << algObject.refinedRank(vec, target) << std::endl;


	std::cout << "result of non-recursive rank " << algObject.noRecursiveRank(vec, target) << std::endl;
}